<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="./css/index.css" />
<title>记事本</title>
</head>
<body>

<!-- 主体区域 -->
<section id="app">
  <!-- 输入框 -->
  <header class="header">
    <h1>小黑记事本</h1>
    <input placeholder="请输入任务" class="new-todo" v-model.trim="content" @keyup.enter='add'/>
    <button class="add" @click="add">添加任务</button>
  </header>
  <!-- 列表区域 -->
  <section class="main">
    <ul class="todo-list">
      <li class="todo" v-for="(item,index) in list" :key="item.id">
        <div class="view">
          <span class="index">{{index+1}}.</span> <label>{{item.name}}</label>
          <button class="destroy" @click="del(item.id)"></button>
        </div>
      </li>
    </ul>
  </section>
  <!-- 统计和清空 -->
  <footer class="footer">
    <!-- 统计 -->
    <span class="todo-count">合 计:<strong> {{list.length}} </strong></span>
    <!-- 清空 -->
    <button class="clear-completed" @click="delAll">
      清空任务
    </button>
  </footer>
</section>

<!-- 底部 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>

  const app = new Vue({
    el: '#app',
    data: {
      list: [
        { id: 1, name: '跑步一公里' },
        { id: 2, name: '骑车5公里' },
        { id: 3, name: '游泳100米' },
      ],
      content:''
    },
    methods: {
      del(id){
        // 将未选中数据重新渲染
        this.list = this.list.filter(item=>item.id !== id)
      },
      add(){
        // 先判断输入内容是否有空格和空
        if (this.content == '') {
           return alert('请输入任务')
        }
        //将新数据添加到数组最前面
        // console.log(this.content)
        this.list.unshift({
          id:+new Date(),
          name:this.content
        })
        //清除表单
        this.content = ''
      },
      //点击清除所有数据
      delAll(){
        this.list = []
      }

    },
  })

</script>
</body>
</html>
